package br.com.ads.sgse.managedBean;

import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import br.com.ads.dao.DAO;
import br.com.ads.sgse.entity.Modalidade;

@ManagedBean(name="modalidadeBean")
@ViewScoped
public class ModalidadeBean {
	private Modalidade modalidade = new Modalidade();
	private List<Modalidade> modalidades;
	private DAO<Modalidade> dao = new DAO<Modalidade>(Modalidade.class);
	private String parameter;

	public String getParameter() {return parameter;}
	public void setParameter(String parameter) {this.parameter = parameter;}

	
	/** ACTIONS **/

	@SuppressWarnings("unused")
	@PostConstruct
	private void init() {
		getAllModalidades();
	}

	public String salvar() {
		try {
			if (modalidade.getId() == null) {
				dao.adiciona(modalidade);
			} else {
				dao.atualiza(modalidade);
			}

			getAllModalidades();
			modalidade = new Modalidade();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}

	public void remove() {
		try {
			dao.remove(modalidade);
			getAllModalidades();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void getAllModalidades() {
		try {
			setModalidades(dao.listaTodos());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public Modalidade getModalidade() {return modalidade;}
	public void setModalidade(Modalidade modalidade) {this.modalidade = modalidade;}

	public List<Modalidade> getModalidades() {return modalidades;}
	public void setModalidades(List<Modalidade> modalidades) {this.modalidades = modalidades;}

}
